package com.mhc.haval.security.dto;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @author Churry
 * @create 2017-08-30 16:44
 **/
@Data
public class UserDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 尝试解决dubbo序列化问题，增加无参构造函数
     */
    public UserDTO() {}

    /**
     * 自增主键，员工ID
     * ac_staff.staff_id
     */
    private Long staffId;

    /**
     * 部门ID
     * ac_staff.dept_id
     */
    private Long deptId;

    /**
     * 员工工号
     * ac_staff.staff_no
     */
    private String staffNo;

    /**
     * 员工姓名，真名
     * ac_staff.staff_name
     */
    private String staffName;

    /**
     * 员工昵称
     * ac_staff.staff_nickname
     */
    private String staffNickname;

    /**
     * 员工邮箱，作为登录账号用
     * ac_staff.email
     */
    private String email;

    /**
     * 登录密码，密文存储，不可逆
     * ac_staff.password
     */
    private String password;

    /**
     * 员工手机号，可以作为登录账号使用
     * ac_staff.phone
     */
    private String phone;

    /**
     * 账号状态：-1 已删除，0 正常， 1 停用
     * ac_staff.status
     */
    private Integer status;

    /**
     * 创建者员工ID
     * ac_staff.creator
     */
    private Long creator;

    /**
     * 最后修改者员工ID
     * ac_staff.modifier
     */
    private Long modifier;

    /**
     * 部门名称
     */
    private String deptName;

    /**
     * 公司编号
     * ac_company.company_no
     */
    private String companyNo;

    /**
     * 银行ID
     */
    private Long bankId;

    /**
     * 用户拥有的角色
     */
    private List<RoleDTO> roleList;

    /**
     * 用户拥有的权限
     */
    private List<FuncDTO> funcList;

    /**
     * 部门所属区域
     */
    private List<DeptAreaDTO> deptBizAreaList;

}
